home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / mozilla-firefox / idl / nsIAccessNode.idl < prev    next >
Text File  |  2006-05-08  |  5KB  |  142 lines

  1. /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
  2. /* ***** BEGIN LICENSE BLOCK *****
  3.  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
  4.  *
  5.  * The contents of this file are subject to the Mozilla Public License Version
  6.  * 1.1 (the "License"); you may not use this file except in compliance with
  7.  * the License. You may obtain a copy of the License at
  8.  * http://www.mozilla.org/MPL/
  9.  *
  10.  * Software distributed under the License is distributed on an "AS IS" basis,
  11.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  12.  * for the specific language governing rights and limitations under the
  13.  * License.
  14.  *
  15.  * The Original Code is mozilla.org code.
  16.  *
  17.  * The Initial Developer of the Original Code is
  18.  * Netscape Communications Corporation.
  19.  * Portions created by the Initial Developer are Copyright (C) 2003
  20.  * the Initial Developer. All Rights Reserved.
  21.  *
  22.  * Original Author: Aaron Leventhal (aaronl@netscape.com)
  23.  * Contributor(s):
  24.  *
  25.  * Alternatively, the contents of this file may be used under the terms of
  26.  * either the GNU General Public License Version 2 or later (the "GPL"), or
  27.  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
  28.  * in which case the provisions of the GPL or the LGPL are applicable instead
  29.  * of those above. If you wish to allow use of your version of this file only
  30.  * under the terms of either the GPL or the LGPL, and not to allow others to
  31.  * use your version of this file under the terms of the MPL, indicate your
  32.  * decision by deleting the provisions above and replace them with the notice
  33.  * and other provisions required by the GPL or the LGPL. If you do not delete
  34.  * the provisions above, a recipient may use your version of this file under
  35.  * the terms of any one of the MPL, the GPL or the LGPL.
  36.  *
  37.  * ***** END LICENSE BLOCK ***** */
  38.  
  39. #include "nsISupports.idl"
  40.     
  41. interface nsIDOMNode;
  42. interface nsIAccessibleDocument;
  43.  
  44. /**
  45.  * An interface used by in-process accessibility clients
  46.  * to get style, window, markup and other information about
  47.  * a DOM node. When accessibility is active in Gecko,
  48.  * every DOM node can have one nsIAccessNode for each
  49.  * pres shell the DOM node is rendered in.
  50.  * The nsIAccessNode implementations are instantiated lazily.
  51.  * The nsIAccessNode tree for a given dom window
  52.  * has a one to one relationship to the DOM tree.
  53.  * If the DOM node for this access node is "accessible",
  54.  * then a QueryInterface to nsIAccessible will succeed.
  55.  *
  56.  * @status UNDER_REVIEW
  57.  */
  58. [scriptable, uuid(46820F9B-3088-4046-AB0F-56FDACDC7A82)]
  59. interface nsIAccessNode : nsISupports
  60. {
  61.   /**
  62.    * The DOM node this nsIAccessNode is associated with.
  63.    */
  64.   readonly attribute nsIDOMNode DOMNode;
  65.  
  66.   /**
  67.    * The number of DOM children for the DOM node, which
  68.    * matches the number of nsIAccessNode children for this
  69.    * nsIAccessNode.
  70.    */
  71.   readonly attribute long numChildren;
  72.   
  73.   /**
  74.    * Get the nth child of this node
  75.    * @param childNum Zero-based child index
  76.    * @return The nth nsIAccessNode child
  77.    */
  78.   nsIAccessNode getChildNodeAt(in long childNum);
  79.   
  80.   /**
  81.    * The parent nsIAccessNode
  82.    */
  83.   readonly attribute nsIAccessNode parentNode;
  84.  
  85.   /**
  86.    * The first nsIAccessNode child
  87.    */
  88.   readonly attribute nsIAccessNode firstChildNode;
  89.  
  90.   /**
  91.    * The last nsIAccessNode child
  92.    */
  93.   readonly attribute nsIAccessNode lastChildNode;
  94.   
  95.   /**
  96.    * The previous nsIAccessNode sibling
  97.    */
  98.   readonly attribute nsIAccessNode previousSiblingNode;
  99.  
  100.   /**
  101.    * The next nsIAccessNode sibling
  102.    */
  103.   readonly attribute nsIAccessNode nextSiblingNode;
  104.  
  105.   /**
  106.    * The nsIAccessibleDocument that this nsIAccessNode
  107.    * resides in.
  108.    */
  109.   readonly attribute nsIAccessibleDocument accessibleDocument;
  110.   
  111.   /**
  112.    * The innerHTML for the DOM node
  113.    * This is a text string of all the markup inside the DOM
  114.    * node, not including the start and end tag for the node.
  115.    */
  116.   readonly attribute DOMString innerHTML;
  117.  
  118.   /**
  119.    * The OS window handle for the window this node
  120.    * is being displayed in.
  121.    */
  122.   [noscript] readonly attribute voidPtr ownerWindow;
  123.   
  124.   /**
  125.    * A unique ID calculated for this DOM node, for the 
  126.    * purposes of caching and referencing this object.
  127.    */
  128.   [noscript] readonly attribute voidPtr uniqueID;
  129.  
  130.   /**
  131.    * Retrieve the computed style value for this DOM node, if it is a DOM element.
  132.    * Note: the meanings of width, height and other size measurements depend
  133.    * on the version of CSS being used. Therefore, for bounds information, 
  134.    * it is better to use nsIAccessible::accGetBounds.
  135.    * @param pseudoElt The pseudo element to retrieve style for, or NULL
  136.    *                  for general computed style information for this node.
  137.    * @param propertyName Retrieve the computed style value for this property name,
  138.    *                     for example "border-bottom".
  139.    */
  140.   DOMString getComputedStyleValue(in DOMString pseudoElt, in DOMString propertyName);
  141. };
  142.